As software becomes more complex, it is inevitable that the number of software bugs will increase rapidly. A software bug is an error or defect in a source code program that causes the program to behave in an unexpected way or produce an erroneous or unexpected result. Software bugs hinder the development of a software program since the detection of a software bug may consume a significant amount of time to detect, especially when the location of the software bug is unknown. No matter has rigorous the program is tested, a software bug may go undetected and create disastrous results if left unresolved.